#ifndef SERVERWINDOW_H
#define SERVERWINDOW_H

#include <QObject>
#include <QWidget>
#include <QMainWindow>
#include <QMenu>
#include <QMenuBar>
#include <QBoxLayout>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QString>
#include <QLabel>
#include <QFileDialog>
#include <QRadioButton>
#include <QGroupBox>

#include "../Common/Observer.h"
#include "../Common/Song.h"
#include "../Common/Playlist.h"
#include "../Common/PlaylistWidget.h"
#include "playlistserver.h"

class ServerWindow : public QMainWindow, public Observer
{
Q_OBJECT

public:
    ServerWindow (QWidget * parent = 0);
    void notify (Observable * obj, int eventCode);

public slots:
    void startServer ();
    void stopServer ();
    void addSong ();

private:
    PlaylistServer       * server;

    QVBoxLayout		* mainLayout;
    PlaylistWidget  * playlistWidget;

    void initMenu ();
    void updateMenu ();

    void initMainLayout ();
    void updateGUI ();
};

#endif
